SLA Engine Component
Summary
The SLA Engine represents the component responsible for generating, storing and observing the formal documents describing electronic agreements between the parties involved in CloudSocket: BPaaS bundle customers, brokers and cloud providers. The component follows the WS-Agreement specification. This means that the documents representing templates and agreements are valid according to the schema defined in the specification. The specification is extended where needed to cover some specific CloudSocket needs.
This component will expose:
- A graphical user interface for checking the status of agreements,
- A REST API interface allowing programmatic access to the different types of functionalities offered.
The main functionalities are:
- Generation of WS-Agreement templates and agreements.
- Management of SLA related entities: templates, agreements, providers, violations, penalties
- Assessment of SLOs and corresponding penalties when an SLO is violated.
- Notification of detected violations and incurred penalties to interested parties.
- ...
Type of ownership | Extension & Adaptation |
Original tool | SLA Framework asset |
Planned OS license | Apache License Version 2.0. |
Reference community | None |
Consist of
- SLA Engine (core functionalities)
- SLA Dashboard (Graphical User Interface)
Depends on
- Monitoring
Component responsible
Developer | Company | |
---|---|---|
Roman Sosa Gonzalez | roman.sosa@atos.net | Atos |
Joaquin Iranzo | Joaquin.iranzo@atos.net | Atos |
Architecture design
Figure: General architecture for Workflow Engine
Installation manual
Development
Requirements
- Oracle JDK >= 1.6
- Database to install the database schema for the service: Mysql>=5.0
- Maven >= 3.0
Installation
All commands shown here are ready to be executed from the root directory of the sla-core project (i.e., the one with the configuration.properties file)
- Download source code from gitlab
git clone https://omi-gitlab.e-technik.uni-ulm.de/cloudsocket/sla-framework.git
- Compile SLA Engine
cd sla-core mvn clean install
- Create database in mysql
$ mysql -p -u root mysql> CREATE DATABASE atossla; mysql> CREATE USER atossla@localhost IDENTIFIED BY '_atossla_'; mysql> GRANT ALL PRIVILEGES ON atossla.* TO atossla@localhost;
- Execute server. The following command will start a SLA Engine server in port 8080.
bin/runserver.sh [port]
User manual
API Specification
The SLA Framework API will be extended in CloudSocket.